package main.java.DMDE.controllers;

import java.util.List;

import main.java.DMDE.controllers.listeners.IRelationshipEventListener;
import main.java.DMDE.model.Diagram;
import main.java.DMDE.model.relationships.Relationship;

public interface IRelationshipController {

    void create();

    void addCreateListener(IRelationshipEventListener listener);

    void addDiagram(Diagram diagram);

    void createRelationship(String relationshipType);

    List<String> getEntitiesA();
    
    List<String> getEntitiesB(String entityAName);

    Relationship addRelationship();

    List<Relationship> getRelationships();

    void addRelationshipsToDiagram() throws Exception;

    void createRelationship(Relationship relationship);

    boolean editRelationship(Relationship relationshipSelected);

    boolean removeRelationship(Relationship relationshipSelected);

    void setDiagram(Diagram diagram);

}
